﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Application.Interfaces
{
    using Domain.UserManagement.Entities;

    public interface IUserManagementService
    {
        User AddUser(User newUser);
        User FindUser(string userName);
        void UpdateUser(User changedUser);
        void DeleteUser(User removeUser);
        IList<User> GetAllUsers();

        Role AddRole(Role newRole);
        void UpdateRole(Role changedRole);
        void DeleteRole(Role removeRole);
        IList<Role> GetAllRoles();

        void AddPermission(Permission newPermission);
        void UpdatePermission(Permission changedPermission);
        void DeletePermission(Permission removePermission);
        IList<Permission> GetAllPermissions();
    }
}
